|
(*~\Глагол\Отделы\Иное~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*)
(**) ОТДЕЛ Перевод;
(*============================================================================*)
(* НАЗНАЧЕНИЕ: перевод русских букв в латинские *)
(*============================================================================*)
(* Соответствие русских букв и латинских буквосочетаний:
А - A К - K Х - H
Б - B Л - L Ц - C
В - V М - M Ч - CH
Г - G Н - N Ш - SH
Д - D О - O Щ - SC
Е - JE П - P Ъ - O
Ё - JO Р - R Ы - Y
Ж - X С - S Ь - E
З - Z Т - T Э - E
И - I У - U Ю - JU
Й - J Ф - F Я - JA *)
(*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*)
ЗАДАЧА ВЛат-(рус-,лат+:ЦЕПЬ);
ПЕР
р,л:ЗНАК; (* русская и латинская буквы *)
рп,лп:ЦЕЛ;(* позиция русской и латинской буквы *)
рд,лд:ЦЕЛ;(* обрабатываемая длина цепочек *)
УКАЗ
рд:=ДЛИНА(рус);
лд:=РАЗМЕР(лат)-2; (* запас для 0X и последней второй буквы *)
рп:=0;
лп:=0;
ПОКА (рп < рд) И (лп < лд) ВЫП
(* получить первую букву *)
р:=рус[рп];
ВЫБРАТЬ р ИЗ
| "а":л:="a"
| "б":л:="b"
| "в":л:="v"
| "г":л:="g"
| "д":л:="d"
| "е":л:="j"
| "ё":л:="j"
| "ж":л:="x"
| "з":л:="z"
| "и":л:="i"
| "й":л:="j"
| "к":л:="k"
| "л":л:="l"
| "м":л:="m"
| "н":л:="n"
| "о":л:="o"
| "п":л:="p"
| "р":л:="r"
| "с":л:="s"
| "т":л:="t"
| "у":л:="u"
| "ф":л:="f"
| "х":л:="h"
| "ц":л:="c"
| "ч":л:="c"
| "ш":л:="s"
| "щ":л:="s"
| "ъ":л:="o"
| "ы":л:="y"
| "ь":л:="e"
| "э":л:="e"
| "ю":л:="j"
| "я":л:="j"
| "А":л:="A"
| "Б":л:="B"
| "В":л:="V"
| "Г":л:="G"
| "Д":л:="D"
| "Е":л:="J"
| "Ё":л:="J"
| "Ж":л:="X"
| "З":л:="Z"
| "И":л:="I"
| "Й":л:="J"
| "К":л:="K"
| "Л":л:="L"
| "М":л:="M"
| "Н":л:="N"
| "О":л:="O"
| "П":л:="P"
| "Р":л:="R"
| "С":л:="S"
| "Т":л:="T"
| "У":л:="U"
| "Ф":л:="F"
| "Х":л:="H"
| "Ц":л:="C"
| "Ч":л:="C"
| "Ш":л:="S"
| "Щ":л:="S"
| "Ъ":л:="O"
| "Ы":л:="Y"
| "Ь":л:="E"
| "Э":л:="E"
| "Ю":л:="J"
| "Я":л:="J"
ИНАЧЕ
л:=р
КОН;
лат[лп]:=л;
(* добавить вторую букву *)
УВЕЛИЧИТЬ(лп);
ВЫБРАТЬ р ИЗ
| "Е":л:="E"
| "Ё":л:="O"
| "Ч":л:="H"
| "Ш":л:="H"
| "Щ":л:="C"
| "Ю":л:="U"
| "Я":л:="A"
| "е":л:="e"
| "ё":л:="o"
| "ч":л:="h"
| "ш":л:="h"
| "щ":л:="c"
| "ю":л:="u"
| "я":л:="a"
ИНАЧЕ
УМЕНЬШИТЬ(лп) (* вторая буква не нужна *)
КОН;
лат[лп]:=л;
УВЕЛИЧИТЬ(лп);
УВЕЛИЧИТЬ(рп)
КОН;
лат[лп]:=0X
КОН ВЛат;
КОН Перевод.
|
|